package com.tiancheng.trade.commom.core.data.notify;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 支付结果消息通知
 *
 * @author kellen
 * @date 2024/3/20
 */
@Getter
@Setter
public class PayResultMsgBO {

    // 支付单号
    private String paymentId;
    // 支付流水号
    private String flowId;
    // 支付用户
    private String userId;
    // 支付状态（fail 失败 success 成功）
    private String status;
    // 支付时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime payTime;
    // 支付金额
    private Integer amount;
    // 渠道流水号
    private String transactionId;
    // 收单机构流水号
    private String tradeNo;
    // 业务场景
    private String orderApp;
    // 支付渠道
    private String paymentChannel;
    // 支付方式
    private String paymentWay;
    // 支付场景（app/miniapp/H5/wxapp/pcweb/face-swiping/scan）
    private String payScene;
    // 优惠金额
    private Integer couponAmount;
    /**
     * 子支付流水集合
     */
    private List<PaySubFlowResultMsgBO> subFlows;
}
